package com.example.docmanagement.dto.request;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Size;
import lombok.Data;

/**
 * 更新用户请求体（允许部分字段为空）
 */
@Data
@Schema(description = "更新用户请求")
public class UserUpdateRequest {

    @Schema(description = "用户姓名", example = "张三")
    private String fullName;

    @Schema(description = "手机号", example = "13800138000")
    private String phone;

    @Schema(description = "头像地址")
    private String avatarUrl;

    @Schema(description = "个人简介")
    private String bio;

    @Schema(description = "角色ID", example = "2")
    private Long roleId;

    @Schema(description = "用户状态", allowableValues = {"active", "inactive", "banned"})
    private String status;

    @Schema(description = "邮箱是否已验证")
    private Boolean emailVerified;

    @Schema(description = "应用元数据（JSON 字符串）")
    private String rawAppMetaData;

    @Schema(description = "用户元数据（JSON 字符串）")
    private String rawUserMetaData;
}


